package cn.tedu.blog.server.mapper;


import cn.tedu.blog.server.pojo.entity.Link;
import cn.tedu.blog.server.pojo.vo.LinkDetailVO;
import cn.tedu.blog.server.pojo.vo.LinkListItemVO;

import java.util.List;

public interface LinkMapper {
    /**
     * 插入友链数据
     * @param link 友联诗句
     * @return 受影响的行数
     */
    int insert(Link link);

    /**
     * 根据id删除友链
     * @param id
     * @return
     */
    int deleteById(long id);

    /**
     * 根据多个id批量删除友链
     * @param ids
     * @return
     */
    int deleteByIds(long... ids);

    /**
     * 根据id修改友链
     * @param link
     * @return
     */
    int updateById(Link link);

    /**
     * 根据id查询友链详情
     * @param id
     * @return
     */
    LinkDetailVO getById(long id);

    /**
     * 根据友链名查询友链详情
     * @param name
     * @return
     */
    LinkDetailVO getByName(String name);

    /**
     * 根据友链路径查询友链详情
     * @param url
     * @return
     */
    LinkDetailVO getByUrl(String url);

    /**
     * 查询友链列表
     * @return
     */
    List<LinkListItemVO> list();
    
}
